'use strict'
var { users } = require('../models')

var fn_register = async (ctx, next) => {
    ctx.render('register.html');
};

var fn_registerDone = async (ctx, next) => {
    var username = ctx.request.body.name_username.trim() || '';
    var password = ctx.request.body.name_pwd.trim() || '';
    var againPassword = ctx.request.body.name_againPwd.trim() || '';


    // console.log(`用户名：${username}   密码：${password}   确认密码：${againPassword}`);

    // 判断用户名不能为空，密码不能为空，密码和确认密码一致
    if (username.length > 0 && password.length > 0 && password === againPassword) {
        var registerUserConflict = await users.findAll({
            where: {
                userName: username
            }
        });
        // console.log(registerUserConflict);
        // 查询数据库是否存在相同用户名
        if ([registerUserConflict][0].length === 0) {
            // 用户名不存在
            // 将用户名密码保存进数据库
            users.create({
                userName: username,
                password: password
            });
            // 渲染成功页面
            ctx.render('registerOk.html',{
                // 注册成功的用户名渲染到页面上
                registerUser : username
            });
        } else {
            // 用户名存在
            // 渲染错误页面
            ctx.render('Error.html', {
                // 网页头像
                icon: "/statics/img/loginError.png",
                // 网页插图
                inbetweening: "/statics/img/userNameRepetition.png",
                // 网页标题
                title: "注册失败",
                // 错误内容
                errorContent: "抱歉,你的用户名已经有用户使用啦",
                // 按钮一路径
                router1: '/',
                // 按钮一文本
                button1: "返回首页",
                // 按钮二路径
                router2: '/register',
                // 按钮二文本
                button2: "重新注册"
            });

        }

    }

};

module.exports = {
    '/register': ['get', fn_register],
    '/registerDone': ['post', fn_registerDone]
}